import time
import unittest
from BeautifulReport import BeautifulReport as bf

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys


class ChromeTestCase(unittest.TestCase):
    """
    这是一个 Chrome 的 测试集
    """
    driver = None

    @classmethod
    def setUpClass(cls):
        cls.driver = webdriver.Firefox()

    def test_firefox(self):
        self.driver.get("file:///C:/Users/edz/Desktop/testhtml/exam/House.html")

        # 对  文本框 进行 双击的 操作
        wymc = self.driver.find_element(By.NAME, 'username')
        # 想要实现 双击 首先 需要 导入 双击所需要的模块
        # alt + enter
        ActionChains(driver=self.driver).double_click(wymc).perform()

        # 使用  css 的方式 去定位 email 文本框 继续 输入数据
        self.driver.find_element(By.CSS_SELECTOR, "input#email").clear()
        self.driver.find_element(By.CSS_SELECTOR, "input#email").send_keys("123@qq.com")

        # 文件上传操作
        # 1. 将 需要操作的 元素 定位 到
        file = self.driver.find_element(By.XPATH, "//input[@type='file']")
        file.send_keys(
            'D:\\SoftWare\\pythonstudy\\selenium-python-0115\\com\\hanamaki\\study\\SELENIUM\\demo02\\test.png')

        # 在 执行 脚本 之后  ，可以 进行一个 截图的操作
        self.driver.get_screenshot_as_file('./test.png')

    @classmethod
    def tearDownClass(cls):
        # cls.driver.close()
        pass


if __name__ == '__main__':
    pass
